Referring to FIG. 1, there is shown a distributed computer system 100 that includes a plurality of processor clusters 102. Each cluster 102 will typically include one to four symmetric processors 104 that are coupled via a common bus 106 to a local memory store 108. One or more of the clusters may also include secondary memory 110 (non-volatile memory such as magnetic disk storage). Access to the local memory store 108 (and secondary memory 110, if present) shared by all the processors in the cluster 102 is governed by a memory controller 112 that also can send requests via a network 114 to pull in pages of data stored in the memory stores or secondary memory of other clusters 102 or other devices coupled to the network 114.
Each processor 104 in a cluster 102 includes its own local cache memory 120 that must be kept coherent (i.e., consistent) with the contents stored in the cache memories of the other processors in the system. Each processor 104 in a cluster 102 also includes a translation lookaside buffer (TLB) 122, the purpose of which will be explained below.